package com.ruoyi.erp.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 预算管理对象 ledy_budget
 *
 * @author ztj
 * @date 2025-11-14
 */
public class LedyBudget extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Long id;

    /** 单据id */
    @Excel(name = "单据id")
    private String vouchId;

    /** 单据类型，用于凭证生成规则判断 */
    @Excel(name = "单据类型，用于凭证生成规则判断")
    private String cVouType;

    /** 业务类型1 */
    @Excel(name = "业务类型1")
    private String cBusType1;

    /** 业务类型2 */
    @Excel(name = "业务类型2")
    private String cBusType2;

    /** 业务类型3 */
    @Excel(name = "业务类型3")
    private String cBusType3;

    /** 业务类型4 */
    @Excel(name = "业务类型4")
    private String cBusType4;

    /** 类型变量值 */
    @Excel(name = "类型变量值")
    private String cBusTypeValue;

    /** 部门 */
    @Excel(name = "部门")
    private String cdeptName;

    /** 个人 */
    @Excel(name = "个人")
    private String cpersonName;

    /** 客户 */
    @Excel(name = "客户")
    private String ccusName;

    /** 供应商 */
    @Excel(name = "供应商")
    private String csupName;

    /** 项目大类 */
    @Excel(name = "项目大类")
    private String citemClass;

    /** 项目 */
    @Excel(name = "项目")
    private String citemName;

    /** 借方金额 */
    @Excel(name = "借方金额")
    private BigDecimal md;

    /** 贷方金额 */
    @Excel(name = "贷方金额")
    private BigDecimal mc;

    /** 税额 */
    @Excel(name = "税额")
    private BigDecimal tax;

    /** 现金流量 */
    @Excel(name = "现金流量")
    private String cCashItem;

    /** 摘要 */
    @Excel(name = "摘要")
    private String cdigest;

    /** 凭证类别字 */
    @Excel(name = "凭证类别字")
    private String iflag;

    /** 科目 */
    @Excel(name = "科目")
    private String ccode;

    /** 凭证生成结果 */
    @Excel(name = "凭证生成结果")
    private Integer iflagRe;

    /** 凭证号 */
    @Excel(name = "凭证号")
    private String inoId;

    /** 凭证日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "凭证日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date dbillDate;

    /** 单据日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "单据日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date billDate;

    /** 部门编码 */
    @Excel(name = "部门编码")
    private String cdeptId;

    /** 客户编码 */
    @Excel(name = "客户编码")
    private String ccusId;

    /** 人员编号 */
    @Excel(name = "人员编号")
    private String cpersonId;

    /** 项目编号 */
    @Excel(name = "项目编号")
    private String citemId;

    /** 分摊 */
    @Excel(name = "分摊")
    private Integer ishare;

    /** 分摊期间 */
    @Excel(name = "分摊期间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date iyperiod;

    /** 分摊期数 */
    @Excel(name = "分摊期数")
    private Long iperiod;

    /** 合同号 */
    @Excel(name = "合同号")
    private String contract;

    /** 用途 */
    @Excel(name = "用途")
    private String purpose;

    /** 收款人 */
    @Excel(name = "收款人")
    private String payee;

    private String personDept;
    private String personDeptId;
    /** 业务类型1 */
    @Excel(name = "业务类型1")
    private String cBusType1Id;

    /** 业务类型2 */
    @Excel(name = "业务类型2")
    private String cBusType2Id;

    /** 业务类型3 */
    @Excel(name = "业务类型3")
    private String cBusType3Id;

    /** 业务类型4 */
    @Excel(name = "业务类型4")
    private String cBusType4Id;
    /** 开户行 */
    @Excel(name = "开户行")
    private String openBank;

    public String getcBusType1Id() {
        return cBusType1Id;
    }

    public void setcBusType1Id(String cBusType1Id) {
        this.cBusType1Id = cBusType1Id;
    }

    public String getcBusType2Id() {
        return cBusType2Id;
    }

    public void setcBusType2Id(String cBusType2Id) {
        this.cBusType2Id = cBusType2Id;
    }

    public String getcBusType3Id() {
        return cBusType3Id;
    }

    public void setcBusType3Id(String cBusType3Id) {
        this.cBusType3Id = cBusType3Id;
    }

    public String getcBusType4Id() {
        return cBusType4Id;
    }

    public void setcBusType4Id(String cBusType4Id) {
        this.cBusType4Id = cBusType4Id;
    }

    public String getOpenBank() {
        return openBank;
    }

    public void setOpenBank(String openBank) {
        this.openBank = openBank;
    }

    public String getPersonDept() {
        return personDept;
    }

    public void setPersonDept(String personDept) {
        this.personDept = personDept;
    }

    public String getPersonDeptId() {
        return personDeptId;
    }

    public void setPersonDeptId(String personDeptId) {
        this.personDeptId = personDeptId;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setVouchId(String vouchId)
    {
        this.vouchId = vouchId;
    }

    public String getVouchId()
    {
        return vouchId;
    }
    public void setcVouType(String cVouType)
    {
        this.cVouType = cVouType;
    }

    public String getcVouType()
    {
        return cVouType;
    }
    public void setcBusType1(String cBusType1)
    {
        this.cBusType1 = cBusType1;
    }

    public String getcBusType1()
    {
        return cBusType1;
    }
    public void setcBusType2(String cBusType2)
    {
        this.cBusType2 = cBusType2;
    }

    public String getcBusType2()
    {
        return cBusType2;
    }
    public void setcBusType3(String cBusType3)
    {
        this.cBusType3 = cBusType3;
    }

    public String getcBusType3()
    {
        return cBusType3;
    }
    public void setcBusType4(String cBusType4)
    {
        this.cBusType4 = cBusType4;
    }

    public String getcBusType4()
    {
        return cBusType4;
    }
    public void setcBusTypeValue(String cBusTypeValue)
    {
        this.cBusTypeValue = cBusTypeValue;
    }

    public String getcBusTypeValue()
    {
        return cBusTypeValue;
    }
    public void setCdeptName(String cdeptName)
    {
        this.cdeptName = cdeptName;
    }

    public String getCdeptName()
    {
        return cdeptName;
    }
    public void setCpersonName(String cpersonName)
    {
        this.cpersonName = cpersonName;
    }

    public String getCpersonName()
    {
        return cpersonName;
    }
    public void setCcusName(String ccusName)
    {
        this.ccusName = ccusName;
    }

    public String getCcusName()
    {
        return ccusName;
    }
    public void setCsupName(String csupName)
    {
        this.csupName = csupName;
    }

    public String getCsupName()
    {
        return csupName;
    }
    public void setCitemClass(String citemClass)
    {
        this.citemClass = citemClass;
    }

    public String getCitemClass()
    {
        return citemClass;
    }
    public void setCitemName(String citemName)
    {
        this.citemName = citemName;
    }

    public String getCitemName()
    {
        return citemName;
    }
    public void setMd(BigDecimal md)
    {
        this.md = md;
    }

    public BigDecimal getMd()
    {
        return md;
    }
    public void setMc(BigDecimal mc)
    {
        this.mc = mc;
    }

    public BigDecimal getMc()
    {
        return mc;
    }
    public void setTax(BigDecimal tax)
    {
        this.tax = tax;
    }

    public BigDecimal getTax()
    {
        return tax;
    }
    public void setcCashItem(String cCashItem)
    {
        this.cCashItem = cCashItem;
    }

    public String getcCashItem()
    {
        return cCashItem;
    }
    public void setCdigest(String cdigest)
    {
        this.cdigest = cdigest;
    }

    public String getCdigest()
    {
        return cdigest;
    }
    public void setIflag(String iflag)
    {
        this.iflag = iflag;
    }

    public String getIflag()
    {
        return iflag;
    }
    public void setCcode(String ccode)
    {
        this.ccode = ccode;
    }

    public String getCcode()
    {
        return ccode;
    }
    public void setIflagRe(Integer iflagRe)
    {
        this.iflagRe = iflagRe;
    }

    public Integer getIflagRe()
    {
        return iflagRe;
    }
    public void setInoId(String inoId)
    {
        this.inoId = inoId;
    }

    public String getInoId()
    {
        return inoId;
    }
    public void setDbillDate(Date dbillDate)
    {
        this.dbillDate = dbillDate;
    }

    public Date getDbillDate()
    {
        return dbillDate;
    }
    public void setBillDate(Date billDate)
    {
        this.billDate = billDate;
    }

    public Date getBillDate()
    {
        return billDate;
    }
    public void setCdeptId(String cdeptId)
    {
        this.cdeptId = cdeptId;
    }

    public String getCdeptId()
    {
        return cdeptId;
    }
    public void setCcusId(String ccusId)
    {
        this.ccusId = ccusId;
    }

    public String getCcusId()
    {
        return ccusId;
    }
    public void setCpersonId(String cpersonId)
    {
        this.cpersonId = cpersonId;
    }

    public String getCpersonId()
    {
        return cpersonId;
    }
    public void setCitemId(String citemId)
    {
        this.citemId = citemId;
    }

    public String getCitemId()
    {
        return citemId;
    }
    public void setIshare(Integer ishare)
    {
        this.ishare = ishare;
    }

    public Integer getIshare()
    {
        return ishare;
    }
    public void setIyperiod(Date iyperiod)
    {
//        System.out.println("【set】对象地址：" + System.identityHashCode(this) + "，设置值：" + iyperiod);

        this.iyperiod = iyperiod;
    }

    public Date getIyperiod()
    {
//        System.out.println("【get】对象地址：" + System.identityHashCode(this) + "，获取值：" + iyperiod);
        return iyperiod;
    }
    public void setIperiod(Long iperiod)
    {
        this.iperiod = iperiod;
    }

    public Long getIperiod()
    {
        return iperiod;
    }
    public void setContract(String contract)
    {
        this.contract = contract;
    }

    public String getContract()
    {
        return contract;
    }
    public void setPurpose(String purpose)
    {
        this.purpose = purpose;
    }

    public String getPurpose()
    {
        return purpose;
    }
    public void setPayee(String payee)
    {
        this.payee = payee;
    }

    public String getPayee()
    {
        return payee;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("vouchId", getVouchId())
            .append("cVouType", getcVouType())
            .append("cBusType1", getcBusType1())
            .append("cBusType2", getcBusType2())
            .append("cBusType3", getcBusType3())
            .append("cBusType4", getcBusType4())
            .append("cBusTypeValue", getcBusTypeValue())
            .append("cdeptName", getCdeptName())
            .append("cpersonName", getCpersonName())
            .append("ccusName", getCcusName())
            .append("csupName", getCsupName())
            .append("citemClass", getCitemClass())
            .append("citemName", getCitemName())
            .append("md", getMd())
            .append("mc", getMc())
            .append("tax", getTax())
            .append("cCashItem", getcCashItem())
            .append("cdigest", getCdigest())
            .append("iflag", getIflag())
            .append("ccode", getCcode())
            .append("iflagRe", getIflagRe())
            .append("inoId", getInoId())
            .append("dbillDate", getDbillDate())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("billDate", getBillDate())
            .append("cdeptId", getCdeptId())
            .append("ccusId", getCcusId())
            .append("cpersonId", getCpersonId())
            .append("citemId", getCitemId())
            .append("remark", getRemark())
            .append("ishare", getIshare())
            .append("iyperiod", getIyperiod())
            .append("iperiod", getIperiod())
            .append("contract", getContract())
            .append("purpose", getPurpose())
            .append("payee", getPayee())
            .toString();
    }
}
